package com.shujia.wyh.day15;

/*
    String类的获取功能：*****
        int length()
        char charAt(int index)
        int indexOf(int ch)
        int indexOf(String str)
        int indexOf(int ch,int fromIndex)
        int indexOf(String str,int fromIndex)
        String substring(int start)
        String substring(int start,int end)

 */
public class StringDemo8 {
    public static void main(String[] args) {
        String s = "shujiakeji123";

        //public int length()返回此字符串的长度。 长度等于字符串中的数字Unicode code units 。
        System.out.println(s.length()); //13
        System.out.println("======================================");
        //public char charAt(int index)返回char指定索引处的值。 指数范围为0至length() - 1 。
        // 该序列的第一个char值在索引0 ，下一个索引为1 ，依此类推，与数组索引一样。
        System.out.println(s.charAt(3));
        System.out.println(s.charAt(12));
//        System.out.println(s.charAt(13)); //IndexOutOfBoundsException - 如果 index参数为负数或不小于此字符串的长度。
        System.out.println("=======================================");
        //public int indexOf(int ch)返回指定字符第一次出现的字符串内的索引。
//        System.out.println(s.indexOf(97));
//        System.out.println(s.indexOf('a'));
        System.out.println(s.indexOf('z')); //如果此字符串中没有此类字符，则返回-1
        System.out.println("=======================================");
        //public int indexOf(String str)返回指定子字符串第一次出现的字符串内的索引。
        System.out.println(s.indexOf("ake")); // 返回的是字符串首字母出现在字符串中的位置
        System.out.println(s.indexOf("spark")); //如果整个字符串在大字符串中不存在，返回-1
        System.out.println("=======================================");
        //public int indexOf(int ch,int fromIndex)返回指定字符第一次出现的字符串内的索引，以指定的索引开始搜索。
        System.out.println(s.indexOf(97,6)); //如果不发生的字符。-1
        System.out.println(s.indexOf(97,3)); //如果找到返回的是在整个字符串中的位置索引
        System.out.println("=======================================");
        //int indexOf(String str,int fromIndex)（自主学习）
        System.out.println("=======================================");
        //public String substring(int beginIndex)返回一个字符串，该字符串是此字符串的子字符串。
        // 子字符串以指定索引处的字符开头，并扩展到该字符串的末尾。
        //做字符串截取的
        System.out.println(s.substring(4)); //包含开始的位置，一直截取到末尾
        System.out.println("========================================");
        //String substring(int start,int end) 含头不含尾 [start,end)
        System.out.println(s.substring(4,13));



    }
}
